home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 014 / copytree.arc / COPYTREE.DOC next >
Encoding:
Text File  |  1986-08-29  |  15.6 KB  |  457 lines

  1.  
  2.       ╔═════════════════════════════════════════════════════╗
  3.       ║  COPYTREE - Copy files/subdirectories with options. ║
  4.       ╚═════════════════════════════════════════════════════╝
  5.  
  6.  
  7.  
  8. Copyright (C) 1986 by Tridium, Inc.  All Rights Reserved.
  9.  
  10. This program is distributed as SHAREWARE.
  11.  
  12.  We request $10 for use of this program.
  13.  Please send a check or money order to:
  14.  
  15.             ┌──────────────────────────────────────────────┐
  16.            │                       ┌──┐   │
  17.            │          Tridium, Inc.           └──┘   │
  18.            │         BOX 979              │
  19.            │           39 Bowery              │
  20.            │       New York, NY 10002              │
  21.            └──────────────────────────────────────────────┘
  22.  
  23. ─────────────────────────────────────────────────────────────────────────────
  24.  
  25.  
  26. OVERVIEW:
  27.  
  28.    CopyTree package consists of two programs. CT.EXE and ST.EXE. Both of these
  29.    are useful when backing up or transferring large volumes of disk files, as
  30.    well as for the less critical copy operations.
  31.  
  32.    Because of the many options and protection features built into this package,
  33.    it is ideal for management of big projects, and distribution and exchange of
  34.    IBM PC/XT/AT compatible files.
  35.  
  36.    The program is designed to work on all IBM PC family computers, including
  37.    IBM AT, with or without a hard disk. It has also been tested on some close
  38.    compatibles. It requires around 30k of RAM.
  39.  
  40.    Here are some of the highlights of this package:
  41.  
  42.       ■■ Copies entire tree structures from source to anywhere on the
  43.      destination.
  44.  
  45.       ■■ Has similar MOVE feature, allowing move of file names from one
  46.      sub-tree to another, without copying file contents.
  47.  
  48.       ■■ Allows multiple wildcard patterns to specify which files are to
  49.      be copied. Also, allows 'negative' patterns, i.e. you can specify
  50.      which files are not to be included.
  51.  
  52.       ■■ Allows selective copy of files that don't exist or are new versions
  53.      of the files on the destination.
  54.  
  55.       ■■ Allows update copy, so that only new versions of already existing
  56.          files are copied to the destination.
  57.  
  58.        ■ Warns the user when copy will destroy a newer file with an older one,
  59.      and prompts if the operation should continue.
  60.  
  61.        ■ Can be interrupted at any time by pressing a key. Has a full featured
  62.      menu with options to skip file, quit copying, or temporarily exit to
  63.      DOS.
  64.  
  65.        ■ Will copy to multiple diskettes if source does not fit on one.
  66.  
  67.        ■ Includes comprehensive display of the copy statistics as the copy
  68.      operation progresses.
  69.  
  70.       ■■ Includes a program that will display the total size of the source 
  71.          files before the copy operation is started (ST - Size Tree program).
  72.  
  73.  
  74.  
  75.             ┌────────────────────────────┐
  76.             │ Copy Tree Program (CT.EXE) │
  77.             └────────────────────────────┘
  78.  
  79.  
  80. Usage:
  81. ──────
  82.  
  83.     CT [/switch]...[/switch] [source] [destination]
  84.  
  85.     /switch:
  86.  
  87.     /GROUP    - Copy files from the source(s) into one destination directory.
  88.           If /Subdir is not selected, this has no effect.
  89.  
  90.     /MOVE    - Move files between directories on the same device.
  91.           The file contents are not affected --
  92.           -- the names are merely moved to a different path.
  93.  
  94.     /NEW    - Copy only new files. Copy files that are not already
  95.           on the destination disk or are later generations.
  96.  
  97.     /SUBDIR - Copy the contents of the source path, including any
  98.           subdirectories, to the corresponding subdirectories
  99.           in the destination path.
  100.           (this command may be modified by /Group option)
  101.  
  102.  
  103.     /UPDATE - Copy only files that are new versions of files already
  104.                   existing on the destination. This is a more selective
  105.                   version of /NEW option (above).
  106.  
  107.     /VERIFY - Turn the DOS verify switch on during the operation.
  108.  
  109.     /WIPE    - Completely destroy the contents of the source files
  110.           after the copying process (for security reasons).
  111.           The files are erased and then deleted.
  112.           Warning : Use this option with care!
  113.           This is not available with the /Move option.
  114.  
  115.  
  116.  
  117.    SOURCE:
  118.  
  119.     the path from which to copy/move files.  The specification may  be  by
  120.     the filename,  by a single wildcard pattern (* and ?), or by a list of
  121.     wildcards or filenames.  If you wish to copy all of the files from the
  122.     source path, enter *.* for the filename, or just the directory name: 
  123.  
  124.             CT    C:\*.*    C:\BIN
  125.  
  126.     is equivalent to
  127.  
  128.             CT    C:\  C:\BIN
  129.  
  130.  
  131.     To specify which files not to copy, precede file name (may contain
  132.     wildcards) with a single ! character. E.g.:
  133.  
  134.             CT    C:\!*.EXE  A:
  135.   
  136.     means to copy all files NOT matching *.EXE to drive A.  If  you  wish,
  137.     you can specify more than one pattern.  In this case, you will have to
  138.     use a list of patterns, delimited by [ ] characters.  This list can be
  139.     entered anywhere where a regular pattern can be entered.  For example: 
  140.  
  141.            CT  C:\[*.DOC  *.TXT]  A:
  142.  
  143.     is equivalent to
  144.  
  145.            CT  C:\*.DOC  A:
  146.            CT  C:\*.TXT  A:
  147.  
  148.     Here is a more complex example:
  149.  
  150.            CT  C:\SRC\[*.C *.H !OLD*.C]  A:
  151.  
  152.     will copy all *.C and *.H files from drive C directory SRC to drive A,
  153.     excluding any *.C file starting with OLD*.
  154.  
  155.  
  156.   DESTINATION:
  157.  
  158.      The path to copy or move the files to. This must be a directory
  159.      or a device specification; it cannot be a file.
  160.  
  161.  
  162.      If /S switch is used, all of the files and subdirectories of
  163.      the source path will be copied or moved to this path.
  164.  
  165.  
  166.      If /M switch is used, the destination cannot be on a different
  167.      drive from the source. Move is only allowed between directories
  168.      on the same drive.
  169.  
  170.  
  171.  
  172.             ╔══════════════════════╗
  173.             │  CopyTree Arguments  │
  174.             ╚══════════════════════╝
  175.  
  176.  
  177. The CT program will copy any number of files and subdirectories with files
  178. to a specified device or path. This allows moving full directories, or
  179. just files. It should not be used to rename files, as in:
  180.  
  181.  
  182.                CT text.c text.bak
  183.  
  184.  
  185. This will NOT work properly -- the destination cannot be a filename --
  186. it must be a directory or a device.
  187.  
  188.  
  189. If  no  arguments  are  entered,  the program will display a copyright
  190. message and prompt for the source path.  At this point,  you can  type
  191. in the source path,  and any of the switches that you wish to include.
  192. The program will then prompt for the destination path.  At this  point
  193. you may enter the destination path and any additional options.  
  194.  
  195.  
  196.             ╔══════════════════╗
  197.             │ CopyTree Options │
  198.             ╚══════════════════╝
  199.  
  200.  
  201. Options may be entered anywhere in the command line(s). They may be
  202. abbreviated by the first letter, except for /Wipe, which must be
  203. completely typed. Uperr or lower case is not significant.
  204.  
  205.  
  206. If a directory does not already exist on the destination path, it will
  207. be created. This makes it possible to copy entire directory structures
  208. to anywhere in the destination path.
  209.  
  210.  
  211. /GROUP
  212.  
  213.   This  should  be  used together with the /SUBDIR option.  In all other
  214.   cases this will not have any effect.  The purpose of this option is to
  215.   copy or move files from multiple subdirectories on the source  to  the
  216.   destination path (in the corresponding subdirectories unless /Group is
  217.   used).   For example,  if you wish to copy all of the *.DOC files from
  218.   your hard disk into DOCS directory on drive A: , you could use: 
  219.  
  220.         CT /S /L c:\*.doc  a:\docs
  221.  
  222.   This will go through all directories on drive C: and copy all files
  223.   matching *.DOC into DOCS directory on drive A:.
  224.  
  225.  
  226. /MOVE
  227.  
  228.   This option allows moving files from one directory to any other directory
  229.   on the same device. Only the names will change their location, the actual
  230.   contents of files will not be moved.
  231.  
  232.  
  233. /NEW
  234.  
  235.   Copy only files that do not already exist on the destination path,  or
  236.   are  more  recent  than  the ones on the destination.  This saves time  
  237.   when you wish to update an  already  existing  subdirectory  with  new
  238.   versions of some of the files.  
  239.  
  240.   Note: If /Wipe is selected, then only the files copied are destroyed.
  241.   ie. files that are are older generations that match the source specification
  242.   will not be affected.
  243.  
  244.  
  245. /SUBDIR
  246.  
  247.   Copy all of files indicated by the source argument, including all of the
  248.   subdirectories. If the source path specified includes wildcards, only files
  249.   matching the wildcard will be copied. For example,
  250.  
  251.  
  252.        CT  /S C:\*.DOC A:
  253.  
  254.  
  255.   will copy all of the files with extension .DOC in the top level of the path
  256.   as well as in the subdirectories of that path, on drive C:, to drive A:
  257.  
  258.  
  259.  
  260. /UPDATE
  261.  
  262.   This  option  is  a  more  restrictive  form  of  the /NEW switch.  It
  263.   requests a copy of only updates to the files already existing  on  the
  264.   destination.    This  means  that  no  files  will  be  added  to  the  
  265.   destination,  only old ones replaced by new  versions.   This  option,
  266.   probably,  should  not  be used together with /MOVE command,  since it
  267.   will request a move to a directory  where  the  file  already  exists.
  268.   This will bring up the error menu for each file being moved,  which is
  269.   probably not the desired effect.  
  270.  
  271.  
  272.  
  273. /VERIFY
  274.  
  275.   This option request a verify to be performed as the file is copied  to
  276.   the  destination.  This will have the same effect as the DOS VERIFY ON
  277.   command,  but will last only for the duration of the copy.   On  exit,
  278.   the original VERIFY state will be restored (ON or OFF).  
  279.  
  280.  
  281. /WIPE
  282.  
  283.   This   option  copies  the  contents  of  the  sources  files  to  the
  284.   destination path,  erases the contents of the source files,  and  then
  285.   deletes them.  It must be entered completely, i.e.  /WIPE; /W will not
  286.   work.   Before erasing the first file,  the program will pause and ask
  287.   if it should continue wiping files without prompts.  If the answer  is
  288.   yes,  the program will go on copying the rest of the files, and wiping
  289.   the sources.  If No is selected,  then after copying  each  file,  the
  290.   program will pause and ask the user if the source file is to be wiped.  
  291.  
  292.   Note:  This  option  is  not allowed with the /Move option,  since the
  293.   source file is automatically removed from the source path.  
  294.  
  295.  
  296.             ╔═════════════════════════════╗
  297.             │  CopyTree ERROR CONDITIONS  │
  298.             ╚═════════════════════════════╝
  299.  
  300. Warnings
  301. ────────
  302.  
  303. Before each file is copied, the destination path will be checked for a
  304. file  with  the  same  name.   If  a  duplicate  name  exists  in  the
  305. destination  path,  and  is of a later date than the source file,  the
  306. program will pause,  and ask the user if the file  should  be  copied.
  307. This  makes  it  possible to avoid overwriting a new version of a file
  308. with an old one.  If the source file is of a later date,  then it will
  309. be copied to the destination without pausing.  The same prompt will be
  310. given  if the destination file is of the same date as the source,  but
  311. the files have different sizes.  
  312.  
  313.  
  314. If /MOVE option is in effect, and a file is being moved to a directory
  315. where that  file  already  exists,  an  error  menu  (below)  will  be
  316. displayed.   At  this  point,  the  user can go and delete the file or
  317. select to skip it.  
  318.  
  319.  
  320.  
  321. Error Menu
  322. ──────────
  323.  
  324. If the destination device has no space left, or a key is typed while
  325. copying, the program will stop, and display the following message
  326. and menu of choices :
  327.  
  328.     (C)ontinue copy
  329.     (P)ush to DOS
  330.     (S)kip this file
  331.     (Q)uit copying
  332.  
  333. Entering 'C' will restart the copy on the last file that was displayed.
  334.  
  335. Entering 'P' will temporarily exit to DOS. At the DOS level you can
  336.    remove some files from the destination diskette, replace the destination
  337.    diskette, or format a new diskette. Type EXIT to return to CT.
  338.    Type 'C' to continue copying.
  339.  
  340. Entering 'S' will force CT to skip copying the last file displayed. This
  341.    may be useful if the file is too big to fit on the destination, or you
  342.    don't wish to copy it.
  343.  
  344. Entering 'Q' will stop copying, and exit to DOS (permanently). Note that
  345.    the last file displayed was not copied.
  346.  
  347.  
  348.             ╔═════════════════════════╗
  349.             │   CopyTree Comments      │
  350.             ╚═════════════════════════╝
  351.  
  352.  
  353. Switches starting with /  can be entered anywhere on  the  line.   The
  354. first  non-switch string encountered is assumed to be the source path,
  355. the second is the destination path.  If the  destination  is  omitted,
  356. the  current  drive and directory is assumed.  Switches may be entered
  357. by including one or more letters,  except for the /WIPE switch,  which
  358. cannot be abbreviated.  
  359.  
  360.  
  361. When copying and moving files, CT will display each one as it is being
  362. operated  on.  In addition,  you will see the file size in bytes,  the
  363. date of the file creation,  and the percent of remaining free space on
  364. the destination disk.  When the file is copied (or moved) you will see
  365. the  operation  code  displayed.   If  this is just a check mark,  the
  366. operation was successful.  If it is a check mark followed  by  a  word
  367. Replaced this means there was a duplicate file on the destination that
  368. was  replaced  with the source file.  If the display is "Not Modified"
  369. (with /New option) this implies the file did not need updating.  
  370.  
  371.  
  372. Pressing any key while the files  are  being  copied  will  force  the
  373. program to stop,  and process user requests (once the disk I/O for the
  374. current file is finished).  (See "Error Menu" under "ERROR CONDITIONS").  
  375.  
  376.  
  377. ────────────────────────────────────────────────────────────────────────────
  378.  
  379.  
  380.                ┌────────────────────────────┐
  381.                │ Size Tree Utility (ST.EXE) │
  382.                └────────────────────────────┘
  383.  
  384. OVERVIEW:
  385.  
  386.    ST program is provided for your convenience. It will enable you to
  387.    determine approximately how much space you will need on the destination
  388.    when copying sub-trees or single directories. This program is a stand -
  389.    alone program, and can be run without CT program.
  390.  
  391.    ST will look under all files in the specified path, and all of the
  392.    sub-directories. This means it will provide the total size of the
  393.    entire sub-tree. This will include the same files as the ones copied
  394.    by CT program with switch /S.
  395.  
  396.  
  397.  
  398. Usage:
  399. ──────
  400.  
  401.    ST [/switch] [path]
  402.  
  403.     switch can be:
  404.  
  405.         /Print        - enables display of all files and directories
  406.                   being scanned and included in the total.
  407.  
  408.         /Files        - don't look in sub-directories, just count
  409.                   files on the selected path.
  410.  
  411.     Again, it can be abbreviated to just the first letter: /P or /F, and 
  412.     can be placed anywhere on the command line.
  413.  
  414.  
  415.        path:
  416.  
  417.         Path is the path on which to look for the selected files.
  418.         For a complete description of this, look under SOURCE
  419.         path description for CopyTree program (above). All of the
  420.         pattern features supported by the CT program are supported
  421.         here.
  422.  
  423.  
  424.    Examples:
  425.  
  426.     ST /p *.EXE   - This will determine total size of all *.EXE files
  427.             in the sub-tree, and display all of them on the screen.
  428.  
  429.     ST  !*.OBJ    - Determine size of all files in the current sub-tree,
  430.             not including the object files (*.OBJ).
  431.  
  432.     ST /f[*.C *.H *.DOC]/p   - Determine size of all *.C, *.H and *.DOC
  433.                       files in the current sub-directory. Display
  434.                    all files that are included.
  435.  
  436.  
  437. ════════════════════════════════════════════════════════════════════════════
  438.  
  439.  
  440.                ╔════════════════════╗
  441.                ║  PLEASE READ THIS    ║
  442.                ╚════════════════════╝
  443.  
  444.  
  445. Although these programs have been extensively tested,  we cannot agree
  446. to  be  held responsible for any damages that might occur due to their
  447. (mis)use.  
  448.  
  449. If you find a bug,  or something that you think is a bug,  please send
  450. us  a  description  of the problem.  Any registered user who reports a
  451. real,  and previously unreported bug will receive a free update of the
  452. program with the bug fixed (once the update becomes available.) 
  453.  
  454.  
  455. Paul Kanevsky, August 1986
  456.  
  457.